package com.admin_springboot.adminspringboot.mapper;

import com.admin_springboot.adminspringboot.entity.User;
import org.apache.ibatis.annotations.*;

import java.util.List;

@Mapper
public interface UserMapper {
    /**
     * 查询所有用户
     * @return user集合
     */
    @Select("SELECT * FROM sys_user")
    List<User> findAll();

    /**
     * 分页查询用户
     * @param pageNum 页数
     * @param pageSize 每页显示大小
     * @param username 用户名
     * @return
     */
    List<User> selectPage(Integer pageNum ,Integer pageSize,String username,String phone);

    /**
     * 查询所有记录数
     * @return 总记录数
     */
    @Select("select count(*) from sys_user")
    Integer selectTotal();

    /**
     * 插入用户
     * @param user user对象
     * @return 受影响行数
     */
    @Insert("INSERT into sys_user(username,password,phone) VALUES(#{username},#{password},#{phone})")
    int insert(User user);
    /**
     * 更新用户 使用xml 动态sql
     * @param user user对象
     * @return 受影响行数
     */
    int update(User user);

    /**
     * 根据id删除用户
     * @param id id
     * @return 受影响行数
     */
    @Delete("delete from sys_user  where id =#{id}")
    Integer deleteById(@Param("id") Integer id);


}

